package com.augurit.common.syslog.service;

import java.util.List;

import org.springside.modules.orm.Page;

import com.augurit.common.base.service.ICrudService;
import com.augurit.common.syslog.web.form.SysPropAuditLogForm;

public interface ISysPropAuditLogService extends ICrudService<SysPropAuditLogForm, Long> {
	
	/**
	 * 获取某个VO对象的字段变更记录
	 * @param entity VO对象名
	 * @param entityId VO对象主键
	 * @param orderByClause 排序HQL子句
	 * @return
	 */
	public List<SysPropAuditLogForm> getLogList(String entity, String entityId, String orderByClause);
	
	/**
	 * 获取某个VO对象的字段变更记录
	 * @param entity VO对象名
	 * @param entityId VO对象主键
	 * @return
	 */
	public List<SysPropAuditLogForm> getLogListOrderByUpdatorAndTime(String entity, String entityId);
	
	/**
	 * 获取某个VO对象的字段变更记录
	 * @param entity VO对象名
	 * @param entityId VO对象主键
	 * @return
	 */
	public List<SysPropAuditLogForm> getLogListOrderByPropertyCommentAndTime(String entity, String entityId);
	
	/**
	 * 分页获取某个VO对象的字段变更记录
	 * @param page 分页参数
	 * @param entity VO对象名
	 * @param entityId VO对象主键
	 * @param orderByClause 排序HQL子句
	 * @return
	 */
	public Page<SysPropAuditLogForm> getLogListOrderByUpdatorAndTime(Page<SysPropAuditLogForm> page, String entity, String entityId, String orderByClause);
}